package com.welica.wat.stragety.annotation;

import java.lang.annotation.Retention;
import java.lang.annotation.ElementType;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
* @ClassName: DistributeLock
* @Description: 分布式锁-Redisson自定义注解
* @author weiyongpeng
* @date 2024年4月20日 下午4:25:13
 */
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface DistributeLock {

	/**
	 * key值，锁名称
	 * @return 
	 */
    String lockName() default "distributeLock";

    /**
     * 是否是自旋
     * @return
     */
    boolean isSpin() default false;

    /**
     * 过期秒数
     * @return
     */
    int expireTime() default -1;
}
